The present invention relates generally to computer systems, and more particularly to methods and apparatus for making an application program into a display screen backdrop for digital computer systems.
Computers are becoming increasingly powerful, lightweight, and portable. The computing power of computers that once filled entire rooms is now residing on a desktop. Laptop, notebook, and sub-notebook computers are virtually as powerful as their desktop counterparts. Even smaller hand-held computers are now capable of computing tasks that required much larger machines a few short years ago.
As a part of this trend, computerized personal organizers are becoming increasingly popular with a large segment of the population. Computerized personal organizers tend to be small, lightweight, and relatively inexpensive, and can perform such functions as keeping a calendar, an address book, a to-do list, etc. While many of these functions can also be provided in conventional computer systems, personal organizers are very well suited to the personal organization task due to their small size and portability. Personal organizers are available from many companies including Sharp and Casio of Japan.
A relatively new form of computer, the pen-based computer system, holds forth the promise of a marriage of the power of a general purpose computer with the functionality and small size of a personal organizer. An example of a pen-based computer system is the Newton.RTM. 120 pen-based computer made and marketed by Apple Computer, Inc. of Cupertino, Calif.
A pen-based computer system is typically a small, hand-held computer where the primary method for inputting data includes a "pen" or stylus. A pen-based computer system is commonly housed in a generally rectangular enclosure, and is provided with a dual-function display assembly that can serve as both an input device and an output device. When operating as an input device or "tablet", the display assembly senses the position of the tip of a stylus on the viewing screen and provides this positional information to the computer's central processing unit (CPU). Some display assemblies can also sense the pressure of the stylus on the screen to provide further information to the CPU. When operating as an output device, the display assembly presents computer-generated images on the screen.
The dual-function display assemblies of pen-based computer systems permit users to operate the computer as a computerized notepad, among other functions. For example, graphical images can be input into the pen-based computer by merely moving the stylus on the surface of the screen. As the CPU senses the position and movement of the stylus, it generates a corresponding image on the screen to create the illusion that the stylus is drawing the image directly upon the screen, i.e. that the stylus is "inking" an image on the screen. By "ink" it is meant that pixels on the screen are activated in such a manner that it appears that the stylus is leaving a trail of ink on the display assembly. With suitable recognition software, the "ink" can be recognized to input text, numerics, graphics, and other recognized information into the pen-based system.
On some digital computers, particularly those that are small and highly portable such as the aforementioned Newton.RTM., there is provided a type of program known as the backdrop. A backdrop, as implied by its name, serves as the one piece of software that always operates in the background irrespective of how many other pieces of software the computer may be executing at any given moment. A backdrop can provide any function provided by the typical and familiar stand-alone application software yet differs therefrom in many important respects. For one, there is only one backdrop open (executing) on a computer at any given moment. Further, the backdrop is always open and available to the user whenever the computer is powered on. Most significantly, the execution of a backdrop preferably cannot be terminated by a user or by any other programs since backdrops derive their usefulness from, among others, their ability to remain around as long as the computer is on.
These features make backdrops user-friendly and popular with some users. To illustrate, a computer user who is a real estate agent may desire to have her Newton.RTM. always executing her address book program. By having an address book backdrop, it is assured that the address book data is always available to her whenever her Newton.RTM. is on irrespective of whether additional application programs are launched at a later time.
Further, a backdrop program may be set to be automatically launched when the computer is turned on. By choosing the suitable backdrop application, a user can essentially have a computer that appears to be dedicated to running the chosen backdrop application at all times from the moment it is turned on. These feature turns the computer into a highly functional tool for certain users, particularly those who depend heavily on a single application program for a majority of the time, e.g., the real estate agent in the above example.
As is known, software is written to be either a stand-alone application, e.g., one that is executed using traditional and known methods of launching an application program or as the backdrop. As it turns out, more software is written as stand-alone applications than as backdrops. When a given software is designed as a stand-alone application program, it lacks certain attributes of a backdrop, i.e., the ability to resist termination by the user or by another program, behaviors associated with being the background application instead of just another application window, the ability to self-launch from the moment the computer is turned on, and so forth.
In the prior art, if the user purchased a stand-alone application program, it is not possible at a later date to easily convert that stand-alone application program into the backdrop once the user develops a sufficient liking to and dependence on the application program and would like to have it open at all times. This is because prior art techniques require that the codes of the stand-alone application program be rewritten to endow it with backdrop attributes in order to accomplish the conversion. As can be appreciated, this approach requires intimate knowledge of programming techniques as well as details regarding how the original application program is coded, and is impractical for all but the most skilled programming professionals.
In view of the above, what is desired is an improved method and apparatus for converting an application program into the backdrop in a simple, user-friendly manner. Further, it is desirable that the conversion be performed without rewriting the codes of the original application program. Further, it is desirable that the conversion be seamless, permitting the user to designate a given application program to execute either in the backdrop mode or the non-backdrop mode with minimum effort.